package com.ffcc.fitness.course.mapper;

import com.ffcc.fitness.course.pojo.entity.Course;
import com.ffcc.fitness.course.pojo.vo.CourseVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface CourseMapper {

    void insert(Course course);

    List<CourseVO> select();

    /**
     * 更新课程卡片
     * 只有课程的创建者（教练）才能更新自己的课程
     * @param course 包含更新信息的课程对象
     * @return 受影响的行数
     */
    int update(Course course);

    /**
     * 删除课程卡片
     * 只有课程的创建者（教练）才能删除自己的课程
     * @param courseId 课程ID
     * @param coachId 教练ID（用于权限验证）
     * @return 受影响的行数
     */
    int delete(@Param("courseId") Long courseId, @Param("coachId") Long coachId);

}
